[Scala] Как эффективнее использовать библиотеки и IDE ?

nikola1956

При программировании на Scala c использованием IDE IntelliJ IDEA часто происходит притормаживание, перестают отображаться облачки-комментарии при наведении мышки на ту или иную переменную в коде; кроме того, IDE тормозит при компиляции и запуске. Возможно, кто-то из форумчан сталкивался с подобными проблемами и знает, как сделать программирование на Scale с точки зрения IDE более удобным ?
Кроме того, по сравнению с Java оформление библиотек Scala мне показалось довольно "сыроватым". Посоветуйте, пожалуйста, как лучше ориентироваться в Scala-библиотеках, какие ресурсы удобнее использовать ? Пока нашел только следующие ссылки на более-менее удобно оформленные API:
Scala Standart Library
Scalaz
И то, в них не всегда удается найти (хотя возможно я не так ищу ?) описание тех методов, которые, например, выдаются IDEA, когда ставишь точку после переменной в коде.

yroslavasako

При программировании на Scala c использованием IDE IntelliJ IDEA часто происходит притормаживание,
Ты, видимо, не запускал эклипс плагин и не видал как тормозит скала под нетбинсом. Идея - хороший баланс между фичами (почти полная поддержка скалы) и скорость. Почти полная поддержка - это не шутка, полно кода, который запросто компилируется скалой, но тем не менее подчёркивается ошибкой в идее.
Рекомендую заботать sbt - simple build tool, сборщик для скалы, я его использую для компиляции проекта, кроме того там есть плагин для генерации конфигурационного файла идеи, чтобы она легко подхватывала проект, созданный в sbt.
REPL - наиболее простой способ узнать что это за функции у объекта и как они работают. Google как запасной вариант. Плюс scala-доки и Java-доки. Ну и если ты так ещё и не прочитал, то "Programming in scala" by Odersky и "Scala Language Reference"

nikola1956

Большое спасибо за содержательный ответ !
Буду потихоньку разбираться с SBT. Материалы на github по использованию SBT мне не показались особенно простыми, несмотря на название этого инструмента :grin:
Что же касается книги Одерского "Programming in Scala" (2-е издание то читаю её с большим удовольствием. Это, наверно, одна из лучших книг по программированию, которые я когда-либо видел. Автор как будто предугадывает те вопросы, которые возникают у читателя, и далее их разъясняет. :)

ifani

Если вдруг не видел, то у них в блоге недавно было заметка про ускорение компиляции - вдруг окажется полезным.

yroslavasako

В книге, конечно, не хватает нескольких фич, их можно в scala reference почитать. Например, фича про именованные аргументы. Или фича с duck typingом.
В REPL тоже есть свои косяки. Стандартная либа очень любит implicit преобразования типов. Поэтому чтобы получить полный список возможностей того же класс String надо привести его к StringLike[String]
Оставить комментарий
Имя или ник:
Комментарий: